//计算服务器总耗时的中间件  位于第一层中间件
// commenJS方法导出
// ctx:上下文 next吓一跳
module.exports = async (ctx, next)=>{
  // 记录开始时间
  const start = Date.now()
  // 让内层中间件得到执行 因为next()得到的是一个Promise对象 故使用await将里面的数据解出来
  await next()
  // 记录结束时间
  const end = Date.now()
  // 设置响应头 X-Response-Time
  const duration = end - start // 得到服务器总耗时长
  // 通过ctx.set设置响应头
  ctx.set('X-Response-Time', duration + 'ms')
}